package com.cloudfun.campusshare.common.model.dto.kjt;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import lombok.Builder;
import lombok.Data;

import java.util.Map;

/**
 * Created by Huqin on 2020/8/5
 */
@Data
@Builder
@ApiModel("快捷通申请子商户权限请求DTO")
public class KjtSubMerchantPermissionApplyReqDTO {

    /**
     * [6,32]
     * 平台发起子商户结算银行账户变更请求的订单流水号
     */
    @JsonProperty("out_trade_no")
    private String outTradeNo;

    /**
     * 请求号
     * 平台用户ID，平台方分配给用户的唯一标识
     */
    @JsonProperty("partner_user_id")
    private String partnerUserId;

    /**
     * 快捷通分配给平台方子商户的会员ID
     * 也作为登录快捷通收银台的登录账号
     */
    @JsonProperty("identity_id")
    private String identityId;

    /**
     * 业务产品码
     * 申请的业务产品码(多个业务产品码需要以逗号(“,”)号分隔)
     * 10220	付款到卡（次日）
     * 10221	付款到卡（普通）
     * 10226	付款到卡（实时）
     * 20701	即时到账-先分账后结算
     * 20702	担保交易-先分账后结算
     */
    @JsonProperty("biz_product_code")
    private String bizProductCode;

    /**
     * 申请的支付产品码,多个支付产品码必须用逗号(“,”)号分隔)
     * 44	财付通-扫码支付
     * 14	付款到银行卡-对私
     * 20	网银-借记卡
     * 51	快捷-借记卡
     * 30	网银-综合
     * 40	网银-B2B
     * 15	付款到银行卡-对公
     * 55	直接支付-借记卡
     * 32	微信-扫码支付
     * 36	支付宝-扫码支付
     * 31	网银-信用卡
     * 41	微信-扫码枪
     * 42	支付宝-扫码枪
     * 56	直接支付-贷记卡
     * 57	银联快捷支付-借记卡
     * 58	银联快捷支付-贷记卡
     * 64	条码-主扫-借记卡
     * 65	条码-主扫-综合
     * 66	条码-公众号/小程序/服务窗-借记卡
     * 67	条码-公众号/小程序/服务窗-综合
     * 73	条码-主扫-借记卡-线下
     * 74	条码-主扫-综合-线下
     * 75	条码-公众号/小程序/服务窗-借记卡-线下
     * 76	条码-公众号/小程序/服务窗-综合-线下
     */
    @JsonProperty("pay_product_code")
    private String payProductCode;

    /**
     * 申请的接口，申请多个接口，接口名必须用逗号(“,”)号分隔)
     */
    @JsonProperty("interface_name")
    private String interfaceName;

    /**
     * 可不传
     * 扩展备注，商户自定义，如需使用，请与技术支持联系
     */
    @JsonProperty("extension")
    private Map<String, String> extension;

    /**
     * 可不传
     * [200]
     * 服务器异步通知地址，快捷通主动通知商户网站里指定的URL http/https路径，当订单完成后会回调商户并告知订单状态
     */
    @JsonProperty("notify_url")
    private String notifyUrl;
}
